草庐IT

java - 从 URL 获取文件名

全部标签

ruby 正则表达式 : capture the path of url

我想从任何URL中提取其路径。例如:网址:https://stackoverflow.com/questions/ask路径:questions/ask应该不难:url[/(?:\w{2,}\/).+/]但我认为我使用了错误的模式来“忽略这个”('?:'-不起作用)。什么是正确的方法? 最佳答案 我建议您不要使用正则表达式来执行此操作,而是使用内置的URI库:require'uri'uri=URI::parse('http://stackoverflow.com/questions/ask')putsuri.path#results

ruby-on-rails - 在 Ruby 中打开 .doc 文件

我可以打开.doc文件并使用Ruby获取该文件的内容吗? 最佳答案 如果你只需要纯文本内容,你可能想看看Yomu.它是一个gem,充当ApacheTIKA的包装器,它支持多种文档格式,包括以下内容:MicrosoftOfficeOLE2和OfficeOpenXML格式(.doc、.docx、.xls、.xlsx、.ppt、.pptx)OpenOffice.orgOpenDocument格式(.odt、.ods、.odp)AppleiWorks格式富文本格式(.rtf)可移植文档格式(.pdf)

ruby - 在 Ruby 中,使用 "net/http",我们必须加入 url 并自己使用 "?"进行查询?

在下面的代码中,我们必须使用?字符加入url.path和url.query吗?有更优雅的方法吗?我必须使用net/http,因为在某些情况下我也想在用户代理的header中放置一个字符串。require'net/http'url_string='http://www.time.gov/timezone.cgi?Pacific/d/-8'url=URI.parse(url_string)response=Net::HTTP.start(url.host,url.port)do|http|http.get(url.path+'?'+url.query)endputsresponse.bod

ruby - 使用 template.erb 创建文件

我是ruby​​和chef的新手,我想知道是否有办法使用模板创建文件?我试着搜索它,但找不到太多东西。我尝试创建一个黑名单文件并通过Chef将一些正则表达式插入其中。所以我想添加属性并使用template.erb在运行chef时创建文件。有什么提示、指点吗? 最佳答案 Chef有一个名为template的特殊资源,从模板创建文件。您需要将您的模板放在templates/default目录下的cookbook中,然后在您的Recipe中使用它,并提供变量。cookbooks/my_cookbook/templates/default/

ruby - 如何在 XPath 中获取序列的最后一个元素?

在Ruby中,我们可以访问带有负数的数组,如array[-1]以获取数组中的最后一个对象。我如何使用XPath执行此操作?我不能这样做:result=node.xpath('.//ROOT/TAG[-1]/KEY_NAME')我在StackOverflow上找到了一个解决方案,但那是一个仅更改上限以获取元素的查询。这可能会返回最后一项或最后一项和上一项。如果我想在Ruby中只获取前一个元素,如array[-2]怎么办? 最佳答案 您可以在谓词中使用last()访问XPath中的最后一个元素。node.xpath('.//ROOT/T

ruby-on-rails - 如何使用rails输出当前协议(protocol)和url?

我有一个共享对话框。在开发中它看起来像:http://xxxxxx.com/stuff产品上:https://yyyyyyyyyyy.com/stuff输出#Protocol##URL#的最佳Rails方式是什么我可以在哪里设置它们?谢谢 最佳答案 request.protocolrequest.url参见requestobject. 关于ruby-on-rails-如何使用rails输出当前协议(protocol)和url?,我们在StackOverflow上找到一个类似的问题:

ruby - 在 Ruby 中分块读取文件

我需要读取MBblock中的文件,在Ruby中是否有更简洁的方法来执行此操作:FILENAME="d:\\tmp\\file.bin"MEGABYTE=1024*1024size=File.size(FILENAME)open(FILENAME,"rb")do|io|read=0whileread 最佳答案 改编自RubyCookbook第204页:FILENAME="d:\\tmp\\file.bin"MEGABYTE=1024*1024classFiledefeach_chunk(chunk_size=MEGABYTE)yiel

ruby - 如何将 IRB 输入保存到 .rb 文件?

这听起来像是一个新手问题(这是因为我是Ruby和IRB的新手)但是有没有办法将您在IRB中执行的命令保存到文件中?我正在玩WATIR,我很乐意将我所有的输入保存到文件中,而不是复制和粘贴每个输入。感谢您的帮助! 最佳答案 在我的机器上,我可以将其放入我的.irbrc文件(位于您的主目录中):Kernel.at_exit{File.open("irb.log","w")do|f|f它会创建一个文件irb.log,其中包含您的readline历史记录。Irb使用readline进行命令输入。它可能被配置为不对某些人使用readline,

ruby-on-rails - 如何将 routes.rb 拆分成更小的文件

是否可以拆分Rails3.Xroutes.rb文件?我们有很多资源,很难找到它们。我想至少拆分APP和RESTAPI路由。谢谢! 最佳答案 你可以这样做:路线.rbrequire'application_routes'require'rest_api_routes'lib/application_routes.rbYourApplication::Application.routes.drawdo#Applicationrelatedroutesendlib/rest_api_routes.rbYourApplication::Ap

ruby-on-rails - 是否可以添加 "somewhere"一个 `before(:each)` Hook ,以便所有规范文件都可以运行它?

我正在使用RubyonRails3.2.2和rspec-rails-2.8.1。为了使我的规范文件干(不要重复自己)并为测试数据库做种子,我想运行一个before(:each)Hook所有这些规范文件。也就是说,在我所有的规范文件中,我都有以下代码:describe'testdescription'dobefore(:each)doload"#{Rails.root}/db/seeds.rb"end...end是否可以在before(:each)Hook的“某处”添加,以便所有规范文件都可以运行它?您有什么建议? 最佳答案 在spe